Arduino W5100 是一塊含有網路及EEPROM功能的擴充版. 筆者在之前的文章中曾提過可以直接使用Arduino leonardo 或MEGA2560 系列做為主板直接去控制
在某些專案的設計上可能會希望這塊擴充版可以隨時被抽換, 抽換的原因是可能直接讀取燒錄在EEPROM的中的網路層的資訊就可以直接使用
以下是EEPROM中讀取出來的資料
通常EEPROM的燒錄都是以覆蓋的方式進行, 所以在寫入不完全的情況下, 很可能會讀取到之前燒錄的資料.
void setup() {
byte mac[6] = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06 };
byte ip[4] = { 192, 168, 50, 100 };
byte dns[4] = { 8, 8, 8, 8 };
byte gw[4] = { 192, 168, 50, 1 };
byte subnet[4] = { 255, 255, 255, 0
};
// clear EEPROM
for (int i = 0 ; i < EEPROM.length() ; i++) {
EEPROM.write(i, 0);
}
}
NetEeprom.writeManualConfig(mac, ip, subnet,gw,dns);
筆者是使用NETEEPROM 這個library 做燒錄
NETEEPROM連結
缺點: NETEEPROM 最多只有支援ip/ dns/ gateway/ subnet 的燒錄型態. 如果要多個項目 就需要自行增加
參考資料: